/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * FpScannerGUI.java
 *
 * Created on May 18, 2011, 3:22:15 PM
 */
package prjmath.gui;

import java.awt.Color;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JLabel;
import prjmath.FPScanner;

/**
 * This class make IEEE 754 float and double from string bits
 * @author antoine.harlin & mehdi.bouazza
 */
public class FpScannerGUI extends javax.swing.JFrame {

    /** Creates new form FpScannerGUI */
    private JLabel floatBitTab[];
    private JLabel doubleBitTab[];

    public FpScannerGUI() {
        initComponents();

        floatBitTab = new JLabel[32];
        doubleBitTab = new JLabel[64];

        floatBitTab[0] = floatBit1;
        floatBitTab[1] = floatBit2;
        floatBitTab[2] = floatBit3;
        floatBitTab[3] = floatBit4;
        floatBitTab[4] = floatBit5;
        floatBitTab[5] = floatBit6;
        floatBitTab[6] = floatBit7;
        floatBitTab[7] = floatBit8;
        floatBitTab[8] = floatBit9;
        floatBitTab[9] = floatBit10;
        floatBitTab[10] = floatBit11;
        floatBitTab[11] = floatBit12;
        floatBitTab[12] = floatBit13;
        floatBitTab[13] = floatBit14;
        floatBitTab[14] = floatBit15;
        floatBitTab[15] = floatBit16;
        floatBitTab[16] = floatBit17;
        floatBitTab[17] = floatBit18;
        floatBitTab[18] = floatBit19;
        floatBitTab[19] = floatBit20;
        floatBitTab[20] = floatBit21;
        floatBitTab[21] = floatBit22;
        floatBitTab[22] = floatBit23;
        floatBitTab[23] = floatBit24;
        floatBitTab[24] = floatBit25;
        floatBitTab[25] = floatBit26;
        floatBitTab[26] = floatBit27;
        floatBitTab[27] = floatBit28;
        floatBitTab[28] = floatBit29;
        floatBitTab[29] = floatBit30;
        floatBitTab[30] = floatBit31;
        floatBitTab[31] = floatBit32;

        doubleBitTab[0] = doubleBit1;
        doubleBitTab[1] = doubleBit2;
        doubleBitTab[2] = doubleBit3;
        doubleBitTab[3] = doubleBit4;
        doubleBitTab[4] = doubleBit5;
        doubleBitTab[5] = doubleBit6;
        doubleBitTab[6] = doubleBit7;
        doubleBitTab[7] = doubleBit8;
        doubleBitTab[8] = doubleBit9;
        doubleBitTab[9] = doubleBit10;
        doubleBitTab[10] = doubleBit11;
        doubleBitTab[11] = doubleBit12;
        doubleBitTab[12] = doubleBit13;
        doubleBitTab[13] = doubleBit14;
        doubleBitTab[14] = doubleBit15;
        doubleBitTab[15] = doubleBit16;
        doubleBitTab[16] = doubleBit17;
        doubleBitTab[17] = doubleBit18;
        doubleBitTab[18] = doubleBit19;
        doubleBitTab[19] = doubleBit20;
        doubleBitTab[20] = doubleBit21;
        doubleBitTab[21] = doubleBit22;
        doubleBitTab[22] = doubleBit23;
        doubleBitTab[23] = doubleBit24;
        doubleBitTab[24] = doubleBit25;
        doubleBitTab[25] = doubleBit26;
        doubleBitTab[26] = doubleBit27;
        doubleBitTab[27] = doubleBit28;
        doubleBitTab[28] = doubleBit29;
        doubleBitTab[29] = doubleBit30;
        doubleBitTab[30] = doubleBit31;
        doubleBitTab[31] = doubleBit32;
        doubleBitTab[32] = doubleBit33;
        doubleBitTab[33] = doubleBit34;
        doubleBitTab[34] = doubleBit35;
        doubleBitTab[35] = doubleBit36;
        doubleBitTab[36] = doubleBit37;
        doubleBitTab[37] = doubleBit38;
        doubleBitTab[38] = doubleBit39;
        doubleBitTab[39] = doubleBit40;
        doubleBitTab[40] = doubleBit41;
        doubleBitTab[41] = doubleBit42;
        doubleBitTab[42] = doubleBit43;
        doubleBitTab[43] = doubleBit44;
        doubleBitTab[44] = doubleBit45;
        doubleBitTab[45] = doubleBit46;
        doubleBitTab[46] = doubleBit47;
        doubleBitTab[47] = doubleBit48;
        doubleBitTab[48] = doubleBit49;
        doubleBitTab[49] = doubleBit50;
        doubleBitTab[50] = doubleBit51;
        doubleBitTab[51] = doubleBit52;
        doubleBitTab[52] = doubleBit53;
        doubleBitTab[53] = doubleBit54;
        doubleBitTab[54] = doubleBit55;
        doubleBitTab[55] = doubleBit56;
        doubleBitTab[56] = doubleBit57;
        doubleBitTab[57] = doubleBit58;
        doubleBitTab[58] = doubleBit59;
        doubleBitTab[59] = doubleBit60;
        doubleBitTab[60] = doubleBit61;
        doubleBitTab[61] = doubleBit62;
        doubleBitTab[62] = doubleBit63;
        doubleBitTab[63] = doubleBit64;

        for (int i = 0; i < floatBitTab.length; i++) {
            floatBitTab[i].setText("0");
            floatBitTab[i].setForeground(Color.red);
        }
        for (int i = 0; i < doubleBitTab.length; i++) {
            doubleBitTab[i].setText("0");
            doubleBitTab[i].setForeground(Color.red);
        }



        MouseListener mFloat = new MouseAdapter() {

            @Override
            public void mouseClicked(MouseEvent evt) {
                JLabel j = (JLabel) evt.getComponent();
                if (j.getText().equals("0")) {
                    j.setText("1");
                    j.setForeground(Color.green);
                } else {
                    j.setText("0");
                    j.setForeground(Color.red);
                }
                updateFloatGUI();
            }
        };

        for (int i = 0; i < floatBitTab.length; i++) {
            floatBitTab[i].addMouseListener(mFloat);
        }

        MouseListener mDouble = new MouseAdapter() {

            @Override
            public void mouseClicked(MouseEvent evt) {
                JLabel j = (JLabel) evt.getComponent();
                if (j.getText().equals("0")) {
                    j.setText("1");
                    j.setForeground(Color.green);
                } else {
                    j.setText("0");
                    j.setForeground(Color.red);
                }
                updateDoubleGUI();
            }
        };

        for (int i = 0; i < doubleBitTab.length; i++) {
            doubleBitTab[i].addMouseListener(mDouble);
        }
    }

    public void updateFloatGUI() {
        StringBuilder bits = new StringBuilder();
        for (int i = 0; i < 32; i++) {
            bits.append(floatBitTab[i].getText());
        }

        floatTextSigne.setText("" + FPScanner.getSigne(bits.toString()));
        floatTextExposant.setText("" + FPScanner.getFloatExposant(bits.toString()));
        if (floatTextExposant.getText().equals("-127")) {
            floatTextExposant.setText("-126");
            floatTextMantisse.setText("" + (FPScanner.getFloatMantisse(bits.toString()) - 1));
        } else {
            floatTextMantisse.setText("" + FPScanner.getFloatMantisse(bits.toString()));
        }
        floatTextResultat.setText("" + FPScanner.stringBitsToFloat(bits.toString()).toString());

    }

    public void updateDoubleGUI() {
        StringBuilder bits = new StringBuilder();
        for (int i = 0; i < 64; i++) {
            bits.append(doubleBitTab[i].getText());
        }

        doubleTextSigne.setText("" + FPScanner.getSigne(bits.toString()));
        doubleTextExposant.setText("" + FPScanner.getDoubleExposant(bits.toString()));
        if (doubleTextExposant.getText().equals("-1023")) {
            doubleTextExposant.setText("-1022");
            doubleTextMantisse.setText("" + (FPScanner.getDoubleMantisse(bits.toString()) - 1));
        } else {
            doubleTextMantisse.setText("" + FPScanner.getDoubleMantisse(bits.toString()));
        }
        doubleTextResultat.setText("" + FPScanner.stringBitsToDouble(bits.toString()).toString());

    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        buttonGroup1 = new javax.swing.ButtonGroup();
        jPanel1 = new javax.swing.JPanel();
        titreFloat = new javax.swing.JLabel();
        floatBit1 = new javax.swing.JLabel();
        floatBit2 = new javax.swing.JLabel();
        floatBit3 = new javax.swing.JLabel();
        floatBit4 = new javax.swing.JLabel();
        floatBit5 = new javax.swing.JLabel();
        floatBit6 = new javax.swing.JLabel();
        floatBit7 = new javax.swing.JLabel();
        floatBit8 = new javax.swing.JLabel();
        floatBit9 = new javax.swing.JLabel();
        floatBit10 = new javax.swing.JLabel();
        floatBit11 = new javax.swing.JLabel();
        floatBit12 = new javax.swing.JLabel();
        floatBit25 = new javax.swing.JLabel();
        floatBit26 = new javax.swing.JLabel();
        floatBit27 = new javax.swing.JLabel();
        floatBit28 = new javax.swing.JLabel();
        floatBit29 = new javax.swing.JLabel();
        floatBit30 = new javax.swing.JLabel();
        floatBit31 = new javax.swing.JLabel();
        floatBit32 = new javax.swing.JLabel();
        floatBit13 = new javax.swing.JLabel();
        floatBit14 = new javax.swing.JLabel();
        floatBit15 = new javax.swing.JLabel();
        floatBit16 = new javax.swing.JLabel();
        floatBit17 = new javax.swing.JLabel();
        floatBit18 = new javax.swing.JLabel();
        floatBit19 = new javax.swing.JLabel();
        floatBit20 = new javax.swing.JLabel();
        floatBit21 = new javax.swing.JLabel();
        floatBit22 = new javax.swing.JLabel();
        floatBit23 = new javax.swing.JLabel();
        floatBit24 = new javax.swing.JLabel();
        floatTextSigne = new javax.swing.JTextField();
        floatTextExposant = new javax.swing.JTextField();
        floatTextMantisse = new javax.swing.JTextField();
        floatSigneTitre = new javax.swing.JLabel();
        floatExposantTitre = new javax.swing.JLabel();
        floatMantisseTitre = new javax.swing.JLabel();
        floatTextResultat = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jPanel3 = new javax.swing.JPanel();
        jLabel106 = new javax.swing.JLabel();
        doubleBit1 = new javax.swing.JLabel();
        doubleBit2 = new javax.swing.JLabel();
        doubleBit3 = new javax.swing.JLabel();
        doubleBit4 = new javax.swing.JLabel();
        doubleBit5 = new javax.swing.JLabel();
        doubleBit6 = new javax.swing.JLabel();
        doubleBit7 = new javax.swing.JLabel();
        doubleBit8 = new javax.swing.JLabel();
        doubleBit9 = new javax.swing.JLabel();
        doubleBit10 = new javax.swing.JLabel();
        doubleBit11 = new javax.swing.JLabel();
        doubleBit12 = new javax.swing.JLabel();
        doubleBit25 = new javax.swing.JLabel();
        doubleBit26 = new javax.swing.JLabel();
        doubleBit27 = new javax.swing.JLabel();
        doubleBit28 = new javax.swing.JLabel();
        doubleBit29 = new javax.swing.JLabel();
        doubleBit30 = new javax.swing.JLabel();
        doubleBit31 = new javax.swing.JLabel();
        doubleBit32 = new javax.swing.JLabel();
        doubleBit13 = new javax.swing.JLabel();
        doubleBit14 = new javax.swing.JLabel();
        doubleBit15 = new javax.swing.JLabel();
        doubleBit16 = new javax.swing.JLabel();
        doubleBit17 = new javax.swing.JLabel();
        doubleBit18 = new javax.swing.JLabel();
        doubleBit19 = new javax.swing.JLabel();
        doubleBit20 = new javax.swing.JLabel();
        doubleBit21 = new javax.swing.JLabel();
        doubleBit22 = new javax.swing.JLabel();
        doubleBit23 = new javax.swing.JLabel();
        doubleBit24 = new javax.swing.JLabel();
        doubleBit33 = new javax.swing.JLabel();
        doubleBit34 = new javax.swing.JLabel();
        doubleBit35 = new javax.swing.JLabel();
        doubleBit36 = new javax.swing.JLabel();
        doubleBit37 = new javax.swing.JLabel();
        doubleBit38 = new javax.swing.JLabel();
        doubleBit39 = new javax.swing.JLabel();
        doubleBit40 = new javax.swing.JLabel();
        doubleBit41 = new javax.swing.JLabel();
        doubleBit42 = new javax.swing.JLabel();
        doubleBit43 = new javax.swing.JLabel();
        doubleBit44 = new javax.swing.JLabel();
        doubleBit57 = new javax.swing.JLabel();
        doubleBit58 = new javax.swing.JLabel();
        doubleBit59 = new javax.swing.JLabel();
        doubleBit60 = new javax.swing.JLabel();
        doubleBit61 = new javax.swing.JLabel();
        doubleBit62 = new javax.swing.JLabel();
        doubleBit63 = new javax.swing.JLabel();
        doubleBit64 = new javax.swing.JLabel();
        doubleBit45 = new javax.swing.JLabel();
        doubleBit46 = new javax.swing.JLabel();
        doubleBit47 = new javax.swing.JLabel();
        doubleBit48 = new javax.swing.JLabel();
        doubleBit49 = new javax.swing.JLabel();
        doubleBit50 = new javax.swing.JLabel();
        doubleBit51 = new javax.swing.JLabel();
        doubleBit52 = new javax.swing.JLabel();
        doubleBit53 = new javax.swing.JLabel();
        doubleBit54 = new javax.swing.JLabel();
        doubleBit55 = new javax.swing.JLabel();
        doubleBit56 = new javax.swing.JLabel();
        doubleTextSigne = new javax.swing.JTextField();
        doubleTextExposant = new javax.swing.JTextField();
        doubleSigneTitre = new javax.swing.JLabel();
        doubleExposantTitre = new javax.swing.JLabel();
        doubleMantisseTitre = new javax.swing.JLabel();
        doubleTextMantisse = new javax.swing.JTextField();
        doubleTextResultat = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        jMenuBar1 = new javax.swing.JMenuBar();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Analyse et synthèse de nombres à virgule flottante");

        jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        titreFloat.setFont(new java.awt.Font("Pristina", 1, 36)); // NOI18N
        titreFloat.setText("Float");

        floatBit1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit1.setText("jLabel3");
        floatBit1.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit2.setText("jLabel3");
        floatBit2.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit2.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
        floatBit2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                floatBit2MouseClicked(evt);
            }
        });

        floatBit3.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit3.setText("jLabel3");
        floatBit3.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit3.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit4.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit4.setText("jLabel3");
        floatBit4.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit4.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit5.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit5.setText("jLabel3");
        floatBit5.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit5.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit6.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit6.setText("jLabel3");
        floatBit6.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit6.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit7.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit7.setText("jLabel3");
        floatBit7.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit7.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit8.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit8.setText("jLabel3");
        floatBit8.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit8.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit9.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit9.setText("jLabel3");
        floatBit9.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit9.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit10.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit10.setText("jLabel3");
        floatBit10.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit10.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit11.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit11.setText("jLabel3");
        floatBit11.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit11.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit12.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit12.setText("jLabel3");
        floatBit12.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit12.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit25.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit25.setText("jLabel3");
        floatBit25.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit25.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit26.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit26.setText("jLabel3");
        floatBit26.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit26.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit27.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit27.setText("jLabel3");
        floatBit27.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit27.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit28.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit28.setText("jLabel3");
        floatBit28.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit28.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit29.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit29.setText("jLabel3");
        floatBit29.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit29.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit30.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit30.setText("jLabel3");
        floatBit30.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit30.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit31.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit31.setText("jLabel3");
        floatBit31.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit31.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit32.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit32.setText("jLabel3");
        floatBit32.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit32.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit13.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit13.setText("jLabel3");
        floatBit13.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit13.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit14.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit14.setText("jLabel3");
        floatBit14.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit14.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit15.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit15.setText("jLabel3");
        floatBit15.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit15.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit16.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit16.setText("jLabel3");
        floatBit16.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit16.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit17.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit17.setText("jLabel3");
        floatBit17.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit17.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit18.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit18.setText("jLabel3");
        floatBit18.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit18.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit19.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit19.setText("jLabel3");
        floatBit19.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit19.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit20.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit20.setText("jLabel3");
        floatBit20.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit20.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit21.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit21.setText("jLabel3");
        floatBit21.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit21.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit22.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit22.setText("jLabel3");
        floatBit22.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit22.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit23.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit23.setText("jLabel3");
        floatBit23.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit23.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatBit24.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatBit24.setText("jLabel3");
        floatBit24.setToolTipText("Cliquez ici pour changer la valeur de ce bit");
        floatBit24.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        floatTextSigne.setText("+1");
        floatTextSigne.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                floatTextSigneActionPerformed(evt);
            }
        });

        floatTextExposant.setText("-126");
        floatTextExposant.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                floatTextExposantActionPerformed(evt);
            }
        });

        floatTextMantisse.setText("0.0");
        floatTextMantisse.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                floatTextMantisseActionPerformed(evt);
            }
        });

        floatSigneTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatSigneTitre.setText("Signe");

        floatExposantTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatExposantTitre.setText("Exposant");

        floatMantisseTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        floatMantisseTitre.setText("Mantisse");

        floatTextResultat.setText("0.0");
        floatTextResultat.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                floatTextResultatActionPerformed(evt);
            }
        });

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        jLabel2.setText("Résultat");

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(floatTextResultat)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(floatSigneTitre)
                                    .addComponent(floatBit1, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(floatTextSigne, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(43, 43, 43)
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(floatTextExposant)
                                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                        .addGroup(jPanel1Layout.createSequentialGroup()
                                            .addComponent(floatBit2, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit3, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit4, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit5, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit6, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit7, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit8, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(floatBit9, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addComponent(floatExposantTitre)))
                                .addGap(18, 18, 18)
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addGroup(jPanel1Layout.createSequentialGroup()
                                        .addComponent(floatBit10, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit11, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit12, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit13, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit14, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit15, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit16, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit17, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit18, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit19, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit20, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit21, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit22, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit23, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit24, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit25, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit26, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit27, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit28, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit29, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit30, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit31, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(floatBit32, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addComponent(floatMantisseTitre)
                                    .addComponent(floatTextMantisse)))
                            .addComponent(jLabel2)))
                    .addComponent(titreFloat, javax.swing.GroupLayout.PREFERRED_SIZE, 718, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(83, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGap(12, 12, 12)
                .addComponent(titreFloat, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addComponent(floatSigneTitre)
                        .addGap(18, 18, 18)
                        .addComponent(floatBit1)
                        .addGap(37, 37, 37))
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(jPanel1Layout.createSequentialGroup()
                            .addComponent(floatExposantTitre)
                            .addGap(17, 17, 17)
                            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(floatBit2)
                                .addComponent(floatBit3)
                                .addComponent(floatBit4)
                                .addComponent(floatBit5)
                                .addComponent(floatBit6)
                                .addComponent(floatBit7)
                                .addComponent(floatBit8)
                                .addComponent(floatBit9)))
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addComponent(floatMantisseTitre)
                                .addGap(17, 17, 17)
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(floatBit10)
                                    .addComponent(floatBit11)
                                    .addComponent(floatBit12)
                                    .addComponent(floatBit13)
                                    .addComponent(floatBit14)
                                    .addComponent(floatBit15)
                                    .addComponent(floatBit16)
                                    .addComponent(floatBit17)
                                    .addComponent(floatBit18)
                                    .addComponent(floatBit19)
                                    .addComponent(floatBit20)
                                    .addComponent(floatBit21)
                                    .addComponent(floatBit22)
                                    .addComponent(floatBit23)
                                    .addComponent(floatBit24)
                                    .addComponent(floatBit25)
                                    .addComponent(floatBit26)
                                    .addComponent(floatBit27)
                                    .addComponent(floatBit28)
                                    .addComponent(floatBit29)
                                    .addComponent(floatBit30)
                                    .addComponent(floatBit31)
                                    .addComponent(floatBit32))
                                .addGap(18, 18, 18)
                                .addComponent(floatTextMantisse, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(floatTextExposant, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(floatTextSigne, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                .addGap(22, 22, 22)
                .addComponent(jLabel2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(floatTextResultat, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(37, Short.MAX_VALUE))
        );

        jPanel3.setBorder(javax.swing.BorderFactory.createEtchedBorder());

        jLabel106.setFont(new java.awt.Font("Pristina", 1, 36)); // NOI18N
        jLabel106.setText("Double");

        doubleBit1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit1.setText("jLabel3");
        doubleBit1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit2.setText("jLabel3");
        doubleBit2.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit3.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit3.setText("jLabel3");
        doubleBit3.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit4.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit4.setText("jLabel3");
        doubleBit4.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit5.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit5.setText("jLabel3");
        doubleBit5.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit6.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit6.setText("jLabel3");
        doubleBit6.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit7.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit7.setText("jLabel3");
        doubleBit7.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit8.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit8.setText("jLabel3");
        doubleBit8.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit9.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit9.setText("jLabel3");
        doubleBit9.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit10.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit10.setText("jLabel3");
        doubleBit10.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit11.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit11.setText("jLabel3");
        doubleBit11.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit12.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit12.setText("jLabel3");
        doubleBit12.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit25.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit25.setText("jLabel3");
        doubleBit25.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit26.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit26.setText("jLabel3");
        doubleBit26.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit27.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit27.setText("jLabel3");
        doubleBit27.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit28.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit28.setText("jLabel3");
        doubleBit28.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit29.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit29.setText("jLabel3");
        doubleBit29.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit30.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit30.setText("jLabel3");
        doubleBit30.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit31.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit31.setText("jLabel3");
        doubleBit31.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit32.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit32.setText("jLabel3");
        doubleBit32.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit13.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit13.setText("jLabel3");
        doubleBit13.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit14.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit14.setText("jLabel3");
        doubleBit14.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit15.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit15.setText("jLabel3");
        doubleBit15.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit16.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit16.setText("jLabel3");
        doubleBit16.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit17.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit17.setText("jLabel3");
        doubleBit17.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit18.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit18.setText("jLabel3");
        doubleBit18.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit19.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit19.setText("jLabel3");
        doubleBit19.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit20.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit20.setText("jLabel3");
        doubleBit20.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit21.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit21.setText("jLabel3");
        doubleBit21.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit22.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit22.setText("jLabel3");
        doubleBit22.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit23.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit23.setText("jLabel3");
        doubleBit23.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit24.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit24.setText("jLabel3");
        doubleBit24.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit33.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit33.setText("jLabel3");
        doubleBit33.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit34.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit34.setText("jLabel3");
        doubleBit34.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit35.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit35.setText("jLabel3");
        doubleBit35.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit36.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit36.setText("jLabel3");
        doubleBit36.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit37.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit37.setText("jLabel3");
        doubleBit37.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit38.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit38.setText("jLabel3");
        doubleBit38.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit39.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit39.setText("jLabel3");
        doubleBit39.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit40.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit40.setText("jLabel3");
        doubleBit40.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit41.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit41.setText("jLabel3");
        doubleBit41.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit42.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit42.setText("jLabel3");
        doubleBit42.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit43.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit43.setText("jLabel3");
        doubleBit43.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit44.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit44.setText("jLabel3");
        doubleBit44.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit57.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit57.setText("jLabel3");
        doubleBit57.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit58.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit58.setText("jLabel3");
        doubleBit58.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit59.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit59.setText("jLabel3");
        doubleBit59.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit60.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit60.setText("jLabel3");
        doubleBit60.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit61.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit61.setText("jLabel3");
        doubleBit61.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit62.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit62.setText("jLabel3");
        doubleBit62.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit63.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit63.setText("jLabel3");
        doubleBit63.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit64.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit64.setText("jLabel3");
        doubleBit64.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit45.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit45.setText("jLabel3");
        doubleBit45.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit46.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit46.setText("jLabel3");
        doubleBit46.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit47.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit47.setText("jLabel3");
        doubleBit47.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit48.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit48.setText("jLabel3");
        doubleBit48.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit49.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit49.setText("jLabel3");
        doubleBit49.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit50.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit50.setText("jLabel3");
        doubleBit50.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit51.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit51.setText("jLabel3");
        doubleBit51.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit52.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit52.setText("jLabel3");
        doubleBit52.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit53.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit53.setText("jLabel3");
        doubleBit53.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit54.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit54.setText("jLabel3");
        doubleBit54.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit55.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit55.setText("jLabel3");
        doubleBit55.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleBit56.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleBit56.setText("jLabel3");
        doubleBit56.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

        doubleTextSigne.setText("+1");
        doubleTextSigne.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                doubleTextSigneActionPerformed(evt);
            }
        });

        doubleTextExposant.setText("-1023");
        doubleTextExposant.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                doubleTextExposantActionPerformed(evt);
            }
        });

        doubleSigneTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleSigneTitre.setText("Signe");

        doubleExposantTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleExposantTitre.setText("Exposant");

        doubleMantisseTitre.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        doubleMantisseTitre.setText("Mantisse");

        doubleTextMantisse.setText("0.0");
        doubleTextMantisse.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                doubleTextMantisseActionPerformed(evt);
            }
        });

        doubleTextResultat.setText("0.0");
        doubleTextResultat.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                doubleTextResultatActionPerformed(evt);
            }
        });

        jLabel1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        jLabel1.setText("Résultat");

        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
        jPanel3.setLayout(jPanel3Layout);
        jPanel3Layout.setHorizontalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                        .addComponent(doubleTextResultat, javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(jPanel3Layout.createSequentialGroup()
                                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(doubleTextSigne, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(doubleBit1, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(doubleSigneTitre))
                                .addGap(46, 46, 46)
                                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(doubleExposantTitre)
                                    .addGroup(jPanel3Layout.createSequentialGroup()
                                        .addGap(5, 5, 5)
                                        .addComponent(doubleBit2, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit3, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit4, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit5, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit6, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit7, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit8, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit9, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit10, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit11, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(doubleBit12, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addComponent(doubleTextExposant)))
                            .addComponent(doubleMantisseTitre, javax.swing.GroupLayout.Alignment.LEADING))
                        .addComponent(doubleTextMantisse, javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel3Layout.createSequentialGroup()
                            .addComponent(doubleBit13, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit14, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit15, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit16, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit17, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit18, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit19, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit20, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit21, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit22, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit23, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit24, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit25, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit26, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit27, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit28, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit29, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit30, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit31, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit32, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit33, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit34, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit35, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit36, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit37, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit38, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit39, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit40, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit41, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit42, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit43, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit44, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit45, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit46, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit47, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit48, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit49, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit50, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit51, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit52, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit53, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit54, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit55, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit56, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit57, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit58, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit59, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit60, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit61, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit62, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit63, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(doubleBit64, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addComponent(jLabel1))
                .addContainerGap(17, Short.MAX_VALUE))
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addComponent(jLabel106, javax.swing.GroupLayout.DEFAULT_SIZE, 781, Short.MAX_VALUE)
                .addGap(20, 20, 20))
        );
        jPanel3Layout.setVerticalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGap(12, 12, 12)
                .addComponent(jLabel106, javax.swing.GroupLayout.PREFERRED_SIZE, 63, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(doubleSigneTitre)
                    .addComponent(doubleExposantTitre))
                .addGap(18, 18, 18)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(doubleBit2)
                    .addComponent(doubleBit3)
                    .addComponent(doubleBit4)
                    .addComponent(doubleBit5)
                    .addComponent(doubleBit6)
                    .addComponent(doubleBit7)
                    .addComponent(doubleBit8)
                    .addComponent(doubleBit9)
                    .addComponent(doubleBit10)
                    .addComponent(doubleBit11)
                    .addComponent(doubleBit12)
                    .addComponent(doubleBit1))
                .addGap(18, 18, 18)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(doubleTextSigne, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(doubleTextExposant, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(31, 31, 31)
                .addComponent(doubleMantisseTitre)
                .addGap(18, 18, 18)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(doubleBit13)
                    .addComponent(doubleBit14)
                    .addComponent(doubleBit15)
                    .addComponent(doubleBit16)
                    .addComponent(doubleBit17)
                    .addComponent(doubleBit18)
                    .addComponent(doubleBit19)
                    .addComponent(doubleBit20)
                    .addComponent(doubleBit21)
                    .addComponent(doubleBit22)
                    .addComponent(doubleBit23)
                    .addComponent(doubleBit24)
                    .addComponent(doubleBit25)
                    .addComponent(doubleBit26)
                    .addComponent(doubleBit27)
                    .addComponent(doubleBit28)
                    .addComponent(doubleBit29)
                    .addComponent(doubleBit30)
                    .addComponent(doubleBit31)
                    .addComponent(doubleBit32)
                    .addComponent(doubleBit33)
                    .addComponent(doubleBit34)
                    .addComponent(doubleBit35)
                    .addComponent(doubleBit36)
                    .addComponent(doubleBit37)
                    .addComponent(doubleBit38)
                    .addComponent(doubleBit39)
                    .addComponent(doubleBit40)
                    .addComponent(doubleBit41)
                    .addComponent(doubleBit42)
                    .addComponent(doubleBit43)
                    .addComponent(doubleBit44)
                    .addComponent(doubleBit45)
                    .addComponent(doubleBit46)
                    .addComponent(doubleBit47)
                    .addComponent(doubleBit48)
                    .addComponent(doubleBit49)
                    .addComponent(doubleBit50)
                    .addComponent(doubleBit51)
                    .addComponent(doubleBit52)
                    .addComponent(doubleBit53)
                    .addComponent(doubleBit54)
                    .addComponent(doubleBit55)
                    .addComponent(doubleBit56)
                    .addComponent(doubleBit57)
                    .addComponent(doubleBit58)
                    .addComponent(doubleBit59)
                    .addComponent(doubleBit60)
                    .addComponent(doubleBit61)
                    .addComponent(doubleBit62)
                    .addComponent(doubleBit63)
                    .addComponent(doubleBit64))
                .addGap(18, 18, 18)
                .addComponent(doubleTextMantisse, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(30, 30, 30)
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(doubleTextResultat, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jPanel3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(24, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void floatTextResultatActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_floatTextResultatActionPerformed
        Float f = 0.0f;
        try {
            f = Float.parseFloat(floatTextResultat.getText());
        } catch (NumberFormatException e) {
        }
        String s = FPScanner.floatToStringBits(f);
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == '0') {
                floatBitTab[i].setText("0");
                floatBitTab[i].setForeground(Color.red);
            } else {
                floatBitTab[i].setText("1");
                floatBitTab[i].setForeground(Color.green);
            }
        }
        updateFloatGUI();
}//GEN-LAST:event_floatTextResultatActionPerformed

    private void doubleTextSigneActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_doubleTextSigneActionPerformed
        if (doubleTextSigne.getText().charAt(0) == '-') {
            doubleTextSigne.setText("-1");
            doubleBit1.setText("1");
            doubleBit1.setForeground(Color.green);
        } else {
            doubleTextSigne.setText("1");
            doubleBit1.setText("0");
            doubleBit1.setForeground(Color.red);
        }
        updateDoubleGUI();
    }//GEN-LAST:event_doubleTextSigneActionPerformed

    private void floatTextExposantActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_floatTextExposantActionPerformed
        int exp = 0;
        try {
            exp = Integer.parseInt(floatTextExposant.getText());
        } catch (Exception e) {
        }

        exp += 127;
        for (int i = 8; i > 0; i--) {
            if (exp % 2 == 0) {
                floatBitTab[i].setText("0");
                floatBitTab[i].setForeground(Color.red);
            } else {
                floatBitTab[i].setText("1");
                floatBitTab[i].setForeground(Color.green);
            }
            exp >>>= 1;
        }
        updateFloatGUI();
    }//GEN-LAST:event_floatTextExposantActionPerformed

    private void doubleTextResultatActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_doubleTextResultatActionPerformed
        Double d = 0.0d;
        try {
            d = Double.parseDouble(doubleTextResultat.getText());
        } catch (NumberFormatException e) {
        }
        String s = FPScanner.doubleToStringBits(d);
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == '0') {
                doubleBitTab[i].setText("0");
                doubleBitTab[i].setForeground(Color.red);
            } else {
                doubleBitTab[i].setText("1");
                doubleBitTab[i].setForeground(Color.green);
            }
        }
        updateDoubleGUI();
    }//GEN-LAST:event_doubleTextResultatActionPerformed

    private void floatBit2MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_floatBit2MouseClicked
    }//GEN-LAST:event_floatBit2MouseClicked

    private void floatTextSigneActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_floatTextSigneActionPerformed
        if (floatTextSigne.getText().charAt(0) == '-') {
            floatTextSigne.setText("-1");
            floatBit1.setText("1");
            floatBit1.setForeground(Color.green);
        } else {
            floatTextSigne.setText("1");
            floatBit1.setText("0");
            floatBit1.setForeground(Color.red);
        }
        updateFloatGUI();
    }//GEN-LAST:event_floatTextSigneActionPerformed

    private void floatTextMantisseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_floatTextMantisseActionPerformed
        Double d = 0.0d;
        try {
            d = Double.parseDouble(floatTextMantisse.getText());
        } catch (NumberFormatException e) {
        }
        if (d < 1) {
            for (int i = 1; i < 9; i++) {
                floatBitTab[i].setText("0");
                floatBitTab[i].setForeground(Color.red);
            }
        } else {
            d -= 1;
        }

        for (int i = 1; i < 24; i++) {
            if (d >= Math.pow(2, -i)) {
                floatBitTab[i + 8].setText("1");
                floatBitTab[i + 8].setForeground(Color.green);
                d -= Math.pow(2, -i);
            } else {
                floatBitTab[i + 8].setText("0");
                floatBitTab[i + 8].setForeground(Color.red);
            }
        }

        updateFloatGUI();
    }//GEN-LAST:event_floatTextMantisseActionPerformed

    private void doubleTextExposantActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_doubleTextExposantActionPerformed
        long exp = 0;
        try {
            exp = Long.parseLong(doubleTextExposant.getText());
        } catch (NumberFormatException e) {
        }
        exp += 1023;
        for (int i = 11; i > 0; i--) {
            if (exp % 2 == 0) {
                doubleBitTab[i].setText("0");
                doubleBitTab[i].setForeground(Color.red);
            } else {
                doubleBitTab[i].setText("1");
                doubleBitTab[i].setForeground(Color.green);
            }
            exp >>>= 1;
        }
        updateDoubleGUI();
    }//GEN-LAST:event_doubleTextExposantActionPerformed

    private void doubleTextMantisseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_doubleTextMantisseActionPerformed
        Double d = 0.0;
        try {
            d = Double.parseDouble(doubleTextMantisse.getText());
        } catch (NumberFormatException e) {
        }
        if (d < 1) {
            for (int i = 1; i < 12; i++) {
                doubleBitTab[i].setText("0");
                doubleBitTab[i].setForeground(Color.red);
            }
        } else {
            d -= 1;
        }

        for (int i = 1; i < 53; i++) {
            if (d >= Math.pow(2, -i)) {
                doubleBitTab[i + 11].setText("1");
                doubleBitTab[i + 11].setForeground(Color.green);
                d -= Math.pow(2, -i);
            } else {
                doubleBitTab[i + 11].setText("0");
                doubleBitTab[i + 11].setForeground(Color.red);
            }
        }

        updateDoubleGUI();
    }//GEN-LAST:event_doubleTextMantisseActionPerformed
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.ButtonGroup buttonGroup1;
    private javax.swing.JLabel doubleBit1;
    private javax.swing.JLabel doubleBit10;
    private javax.swing.JLabel doubleBit11;
    private javax.swing.JLabel doubleBit12;
    private javax.swing.JLabel doubleBit13;
    private javax.swing.JLabel doubleBit14;
    private javax.swing.JLabel doubleBit15;
    private javax.swing.JLabel doubleBit16;
    private javax.swing.JLabel doubleBit17;
    private javax.swing.JLabel doubleBit18;
    private javax.swing.JLabel doubleBit19;
    private javax.swing.JLabel doubleBit2;
    private javax.swing.JLabel doubleBit20;
    private javax.swing.JLabel doubleBit21;
    private javax.swing.JLabel doubleBit22;
    private javax.swing.JLabel doubleBit23;
    private javax.swing.JLabel doubleBit24;
    private javax.swing.JLabel doubleBit25;
    private javax.swing.JLabel doubleBit26;
    private javax.swing.JLabel doubleBit27;
    private javax.swing.JLabel doubleBit28;
    private javax.swing.JLabel doubleBit29;
    private javax.swing.JLabel doubleBit3;
    private javax.swing.JLabel doubleBit30;
    private javax.swing.JLabel doubleBit31;
    private javax.swing.JLabel doubleBit32;
    private javax.swing.JLabel doubleBit33;
    private javax.swing.JLabel doubleBit34;
    private javax.swing.JLabel doubleBit35;
    private javax.swing.JLabel doubleBit36;
    private javax.swing.JLabel doubleBit37;
    private javax.swing.JLabel doubleBit38;
    private javax.swing.JLabel doubleBit39;
    private javax.swing.JLabel doubleBit4;
    private javax.swing.JLabel doubleBit40;
    private javax.swing.JLabel doubleBit41;
    private javax.swing.JLabel doubleBit42;
    private javax.swing.JLabel doubleBit43;
    private javax.swing.JLabel doubleBit44;
    private javax.swing.JLabel doubleBit45;
    private javax.swing.JLabel doubleBit46;
    private javax.swing.JLabel doubleBit47;
    private javax.swing.JLabel doubleBit48;
    private javax.swing.JLabel doubleBit49;
    private javax.swing.JLabel doubleBit5;
    private javax.swing.JLabel doubleBit50;
    private javax.swing.JLabel doubleBit51;
    private javax.swing.JLabel doubleBit52;
    private javax.swing.JLabel doubleBit53;
    private javax.swing.JLabel doubleBit54;
    private javax.swing.JLabel doubleBit55;
    private javax.swing.JLabel doubleBit56;
    private javax.swing.JLabel doubleBit57;
    private javax.swing.JLabel doubleBit58;
    private javax.swing.JLabel doubleBit59;
    private javax.swing.JLabel doubleBit6;
    private javax.swing.JLabel doubleBit60;
    private javax.swing.JLabel doubleBit61;
    private javax.swing.JLabel doubleBit62;
    private javax.swing.JLabel doubleBit63;
    private javax.swing.JLabel doubleBit64;
    private javax.swing.JLabel doubleBit7;
    private javax.swing.JLabel doubleBit8;
    private javax.swing.JLabel doubleBit9;
    private javax.swing.JLabel doubleExposantTitre;
    private javax.swing.JLabel doubleMantisseTitre;
    private javax.swing.JLabel doubleSigneTitre;
    private javax.swing.JTextField doubleTextExposant;
    private javax.swing.JTextField doubleTextMantisse;
    private javax.swing.JTextField doubleTextResultat;
    private javax.swing.JTextField doubleTextSigne;
    private javax.swing.JLabel floatBit1;
    private javax.swing.JLabel floatBit10;
    private javax.swing.JLabel floatBit11;
    private javax.swing.JLabel floatBit12;
    private javax.swing.JLabel floatBit13;
    private javax.swing.JLabel floatBit14;
    private javax.swing.JLabel floatBit15;
    private javax.swing.JLabel floatBit16;
    private javax.swing.JLabel floatBit17;
    private javax.swing.JLabel floatBit18;
    private javax.swing.JLabel floatBit19;
    private javax.swing.JLabel floatBit2;
    private javax.swing.JLabel floatBit20;
    private javax.swing.JLabel floatBit21;
    private javax.swing.JLabel floatBit22;
    private javax.swing.JLabel floatBit23;
    private javax.swing.JLabel floatBit24;
    private javax.swing.JLabel floatBit25;
    private javax.swing.JLabel floatBit26;
    private javax.swing.JLabel floatBit27;
    private javax.swing.JLabel floatBit28;
    private javax.swing.JLabel floatBit29;
    private javax.swing.JLabel floatBit3;
    private javax.swing.JLabel floatBit30;
    private javax.swing.JLabel floatBit31;
    private javax.swing.JLabel floatBit32;
    private javax.swing.JLabel floatBit4;
    private javax.swing.JLabel floatBit5;
    private javax.swing.JLabel floatBit6;
    private javax.swing.JLabel floatBit7;
    private javax.swing.JLabel floatBit8;
    private javax.swing.JLabel floatBit9;
    private javax.swing.JLabel floatExposantTitre;
    private javax.swing.JLabel floatMantisseTitre;
    private javax.swing.JLabel floatSigneTitre;
    private javax.swing.JTextField floatTextExposant;
    private javax.swing.JTextField floatTextMantisse;
    private javax.swing.JTextField floatTextResultat;
    private javax.swing.JTextField floatTextSigne;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel106;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JLabel titreFloat;
    // End of variables declaration//GEN-END:variables
}
